<html>
<!-- $LastChangedDate: 2009-11-07 22:56:33 -0500 (Sat, 07 Nov 2009) $ -->
<!-- Copyright (C) 2004,2009 Jim Brooks http://www.palomino3d.org -->
<head>
<title>Palomino - HUD</title>
<link rel='stylesheet' type='text/css' href='docs.css'>
<link rel='icon' type='image/png' href='images/favicon.png'/>
</head>
<body>

<!-- ----------------------------------------------------------------------- -->
<h1>Palomino - HUD</h1>
<p>
&copy;2004,2009&nbsp;&nbsp;Jim E. Brooks
&nbsp;&nbsp;<a href='http://www.palomino3d.org'>http://www.palomino3d.org</a>
</p>
<hr>
<ul>
  <li><a href='index.html'>Index</a></li>
  <li><a href='#HUD'>HUD</a></li>
</ul>

<!-- ----------------------------------------------------------------------- -->
<hr>
<a name='HUD'></a>
<h2>HUD</h2>
<p><!--date-->[2008/09]</p>
<p>
The HUD module consists of basic 2D widgets (text, box, etc) for use by the app.
</p>
<p>
Hud class is a container that attaches 2D widgets (HudObject) to be rendered.
</p>
<p>
HudObject is a base class that registers a "frame update" callback.
A derivative can override HudObject::Update() for any action
(update args, issue OpenGL drawing commands, etc).
</p>
<p>
2D widgets such as HudBox and HudText can optionally be defined in 3D terms.
For example, HudBox can be used to make a "target indicator" consisting
of a 2D box that automatically surrounds a 3D object.
</p>

<h3>Implementation</h3>
<p><!--date-->[2008/09]</p>
<p>
The HUD classes were designed to support multiple views,
but in fact, the HUD is only rendered in the main view.
</p>
<p>
HUD is based on OSG which provides TrueType fonts.
The widgets of the HUD are comprised of OSG nodes.
HUD is part of the scene graph but attached to a different Camera
having a 2D projection matrix.
</p>

<!-- ********************************* END ********************************* -->
<hr>
<p align='center'>
<font size='-2'>
<!-- hhmts start -->
Last modified: Sat Nov  7 14:50:51 CST 2009
<!-- hhmts end -->
</font>
</p>

</body>
</html>
